#include <iostream>
using namespace std;

void sort(int a[], int size)
{
    for(int i=0; i<size; i++)
    {
        for(int j=0; j<size-1; j++)
        {
            if(a[j] < a[j+1])
                swap(a[j], a[j+1]);
        }
    }
}

void show(int a[], int size)
{
    for(int i=0; i<size; i++)
        cout << a[i] << " ";
    cout << endl;
}

int main(int argc, char const *argv[])
{
    int N, B;
    cin >> N >> B;

    int H[N];

    for(int i=0; i<N; i++)
        cin >> H[i];

    sort(H, N);

    int count = 0;
    int height = 0;
    for(int i=0; i<N; i++)
    {
        if(height < B)
        {
            height += H[i];
            count++;
        }
        else
            break;
    }

    cout << count << endl;

    return 0;
}